package ar.edu.unq.dodb.morphia.example;

import ar.edu.unq.dodb.morphia.model.Actor;
import ar.edu.unq.dodb.morphia.model.Director;
import ar.edu.unq.dodb.morphia.model.Pelicula;
import ar.edu.unq.dodb.morphia.model.Persona;
import ar.edu.unq.dodb.morphia.store.BasicHome;
import ar.edu.unq.dodb.morphia.store.Home;
import ar.edu.unq.dodb.morphia.store.MorphiaUtils;

public class CrearEjemplo {
	public static void main(final String[] args) {
		MorphiaUtils.initialize("epers");

		final Persona leandro = new Persona("Leandro");

		final Pelicula pelicula = new Pelicula("epers the movie");
		final Director director = new Director(leandro, 10000);
		pelicula.setDirector(director);
		final Actor leonardo = new Actor("Leonardo", 2500);
		final Actor alexis = new Actor("Alexis", 6300);
		pelicula.agregarActor(leonardo)//
				.agregarActor(alexis);

		final Home<Persona> homePersona = new BasicHome<Persona>(Persona.class);
		final Home<Director> homeDirector = new BasicHome<Director>(
				Director.class);
		final Home<Pelicula> homePelicula = new BasicHome<Pelicula>(
				Pelicula.class);
		final Home<Actor> homeActor = new BasicHome<Actor>(Actor.class);
		homePersona.insertar(leandro);
		homeDirector.insertar(director);
		homeActor.insertar(alexis);
		homeActor.insertar(leonardo);
		homePelicula.insertar(pelicula);
	}
}
